Systems and methods for thermally controlling sensors

ABSTRACT

A sensor is compensated by selectively activating a temperature element to drive temperature within the thermal envelope encompassing the sensor towards an operating temperature and applying a compensation to output of the sensor based at least in part on the operating temperature. The initial ambient temperature is estimated and the operating temperature is selected from a set of predetermined temperatures based on the estimate. The current ambient temperature is estimated and a new operating temperature selected when the current ambient temperature is within a threshold of the operating temperature. Correspondingly, the temperature element is selectively activated to drive temperature within the thermal envelope towards the new operating temperature and an appropriate compensation is applied to the sensor output.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority from and benefit of U.S. ProvisionalPatent Application Ser. No. 62/222,061, filed Sep. 15, 2015, which isentitled “SYSTEMS AND SOFTWARE FOR KEEPING THE DEVICE AT NEAR CONSTANTTEMPERATURE,” which is assigned to the assignee hereof and isincorporated by reference in its entirety.

FIELD OF THE PRESENT DISCLOSURE

This disclosure generally relates to sensors and more specifically tothe reducing the effect of ambient temperature on sensor performance.

BACKGROUND

A wide variety of sensors may be incorporated into portable devices,such as cell phones, laptops, tablets, gaming devices and otherportable, electronic devices, as well as vehicles, such as drones, orother devices capable of relative motion. Notably, information frommotion sensors such as gyroscopes, accelerometers, magnetometers thatmeasure quantities along one or more orthogonal axes may be used todetermine the orientation or change in relative orientation of a deviceincorporating the sensor for use as a user input, to determinepositional or navigational information for the device, or for othersuitable purposes. Sensors may also be provided for assessing otheraspects of the environment surrounding the portable device, such assound, humidity, pressure, light, the presence of chemicals and manyothers.

However, due to the nature of electronics and mechanics, including theirrelative size and materials and methods of construction, sensors may berelatively sensitive to ambient temperature and therefore may be subjectto inaccuracies or errors depending on the ambient temperature or whenthe ambient temperature changes. A sensor may exhibit a temperaturedependent offset or bias error that reflects a non-zero component of theoutput that is not correlated with the quantity being measured. Thesensitivity of the sensor may also be affected by temperature, requiringdifferent compensation coefficients. If these or other temperaturedependent errors are not properly compensated, the quality of sensordata may be degraded. For example, many types of sensors may beimplemented using microelectromechanical systems (MEMS) that may beconstructed as a semiconductor package using complementary metal oxidesemiconductor (CMOS) techniques on a silicon substrate or wafer havingmechanically moving elements controlled by integrated electronics. Aswill be appreciated, ambient temperature may affect the performance of aMEMS sensor in a number of ways, the different materials used toconstruct the sensor may exhibit varying coefficients of thermalexpansion, which causes changes in the manner that the elements respondto the environment and interact with each other. Voltage drift and otherdetrimental inconsistencies may also occur due to the ambienttemperature or a change in ambient temperature.

One strategy for reducing the impact of ambient temperature on sensorperformance is to determine performance characteristics of the sensor ata variety of operating temperatures. Subsequently, the operatingtemperature of the sensor may be determined and used to apply theappropriate correction to the sensor data being output. Correspondingly,any effect on the operating temperature caused by the ambienttemperature may be compensated. As a practical matter, the relationshipsbetween temperature and sensor performance may be nonlinear and varyfrom device to device, requiring the inefficient and time consumingprocess of establishing the response of the output signal to temperaturevariations by operating the sensor at a known temperatures and measuringthe resultant output signals. For example, the sensor device may need tobe placed into an oven (or refrigerator) to hold the sensor at the givenoperating temperature while undergoing calibration and testing. At highvolume productions, such individual calibration may be prohibitive dueto lengthy heating time and complex test setup procedures.

To address these difficulties, a thermally stabilized sensor featuringan feedback controlled integrated heating or cooling element may beemployed to maintain the sensor at a desired temperature. By providing amore constant operating temperature that is independent of the ambienttemperature, the accuracy of a sensor may be improved. Nevertheless,significant drawbacks may be associated with thermally controlledsystems. For example, energy is required to activate the thermal elementto maintain the sensor at an the operating temperature different thanwould otherwise result from a given ambient temperature. Particularlyfor mobile applications, power resources may be limited and the need toheat or cool a sensor can reduce the effective operating time. Thetemperature regulating system may also require additional hardwarecomplexity and cost. Accordingly, it would be desirable to providesystems and methods to improve thermal control of a sensor. For example,it would be desirable to reduce the amount of energy required tomaintain a selected operating temperature. Likewise, it would bedesirable to reduce the complexity of the thermal control system.Further, it would be desirable to increase the range of ambienttemperature at which the sensor may operate reliably. As described inthe following materials, this disclosure satisfies these and othergoals. Although discussed in the context of MEMS sensors, the techniquesof this disclosure may be applied to other technologies to improve theperformance of any sensor whose output is affected by ambienttemperature.

SUMMARY

As will be described in detail below, this disclosure includes a methodfor compensating a sensor. The method may involve providing a sensorassembly including the sensor, a temperature sensor and a temperatureelement contained within a thermal envelope, selecting an operatingtemperature, selectively activating the temperature element to drivetemperature within the thermal envelope towards the selected operatingtemperature, applying a first compensation to output of the sensor basedat least in part on the selected operating temperature and estimatingcurrent ambient temperature based at least in part on quantifying energysupplied to the temperature element.

In one aspect, a difference between the selected operating temperatureand the estimated current ambient temperature may be determined and asecond compensation applied to output of the sensor based at least inpart on the determined difference between selected operating temperatureand estimated current ambient temperature.

In one aspect, the temperature element may be selectively activated tocompensate for hysteresis.

In one aspect, selectively activating the temperature element mayinvolve operating the temperature element at a duty cycle. Quantifyingenergy supplied to the temperature element may involve characterizingthe duty cycle.

In one aspect, quantifying energy supplied to the temperature elementmay involve quantifying energy delivered to maintain the thermalenvelope at the operating temperature.

In one aspect, an initial ambient temperature may be estimated based atleast in part on output from the temperature sensor prior to selectivelyactivating the temperature element. The operating temperature may beselected based at least in part on the estimated initial ambienttemperature.

In one aspect, selecting the operating temperature may be based at leastin part on the estimated current ambient temperature.

In one aspect, the operating temperature may be selected from a set ofpredetermined temperatures. The method may involve changing from a firstoperating temperature to a second operating temperature when theestimated current ambient temperature is within a threshold of the firstoperating temperature. Compensations to be applied to sensor output maybe determined for each temperature of the set of predeterminedtemperatures.

In one aspect, the thermal element may be selectively activated to drivetemperature within the thermal envelope towards a supplemental operatingtemperature. A calibration routine may be performed at the supplementaloperating temperature to determine a compensation for the supplementaloperating temperature. The compensation for the supplemental operatingtemperature to output of the sensor. Calibration routines may beperformed at a plurality of supplemental operating temperatures todetermine compensations for each of the supplemental operatingtemperatures.

In one aspect, the thermal element may be a heating element, a coolingelement or a heating and cooling element.

In one aspect, the sensor may be an inertial sensor.

In one aspect, the sensor may be implemented using a microelectro-mechanical system (MEMS).

This disclosure also include a method for compensating a sensor thatinvolves providing a sensor assembly including the sensor and atemperature element contained within a thermal envelope, estimating aninitial ambient temperature, selecting a first operating temperaturefrom a set of predetermined temperatures based at least in part on theinitial estimated ambient temperature, selectively activating thetemperature element to drive temperature within the thermal envelopetowards the first operating temperature and applying a firstcompensation to output of the motion sensor based at least in part onthe first operating temperature.

In one aspect, a current ambient temperature may be estimated and asecond operating temperature selected when the estimated current ambienttemperature is within a threshold of the first operating temperature sothat the temperature element may be selectively activated to drivetemperature within the thermal envelope towards the second operatingtemperature and a second compensation may be applied to output of thesensor based at least in part on the second operating temperature.Estimating the current ambient temperature may involve quantifyingenergy supplied to the temperature element when driving temperaturewithin the thermal envelope towards the first operating temperature.Alternatively or in addition, estimating the current ambient temperaturemay involve obtaining a measurement from an auxiliary temperaturesensor.

This disclosure also includes a sensor device having a sensor assemblywith a sensor, a temperature sensor and a temperature element containedwithin a thermal envelope and a controller to select an operatingtemperature, selectively activate the temperature element to drivetemperature within the thermal envelope towards the selected operatingtemperature, apply a first compensation to output of the sensor based atleast in part on the selected operating temperature and estimate currentambient temperature based at least in part on quantifying energysupplied to the temperature element.

Further, this disclosure includes a sensor device having a sensorassembly including a sensor, a temperature sensor and a temperatureelement contained within a thermal envelope and a controller to estimatean initial ambient temperature, select a first operating temperaturefrom a set of predetermined temperatures based at least in part on theinitial estimated ambient temperature, selectively activate thetemperature element to drive temperature within the thermal envelopetowards the first operating temperature and apply a first compensationto output of the sensor based at least in part on the first operatingtemperature. The controller may also estimate a current ambienttemperature, select a second operating temperature when the estimatedcurrent ambient temperature is within a threshold of the first operatingtemperature, selectively activate the temperature element to drivetemperature within the thermal envelope towards the second operatingtemperature and apply a second compensation to output of the sensorbased at least in part on the second operating temperature.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is schematic diagram of a thermally controlled sensor deviceaccording to an embodiment.

FIG. 2 is schematically depicts feedback control of thermally controlledsensor device according to an embodiment.

FIG. 3 is schematic representation of operation of a thermallycontrolled sensor device according to an embodiment.

FIG. 4 is a flowchart depicting a routine for estimating ambienttemperature according to an embodiment.

FIG. 5 is a flowchart depicting a routine for selecting amongpredetermined operating temperatures according to an embodiment.

FIG. 6 is schematic representation of operation of a thermallycontrolled sensor device at a plurality of predetermined operatingtemperatures according to an embodiment.

DETAILED DESCRIPTION

At the outset, it is to be understood that this disclosure is notlimited to particularly exemplified materials, architectures, routines,methods or structures as such may vary. Thus, although a number of suchoptions, similar or equivalent to those described herein, can be used inthe practice or embodiments of this disclosure, the preferred materialsand methods are described herein.

It is also to be understood that the terminology used herein is for thepurpose of describing particular embodiments of this disclosure only andis not intended to be limiting.

The detailed description set forth below in connection with the appendeddrawings is intended as a description of exemplary embodiments of thepresent disclosure and is not intended to represent the only exemplaryembodiments in which the present disclosure can be practiced. The term“exemplary” used throughout this description means “serving as anexample, instance, or illustration,” and should not necessarily beconstrued as preferred or advantageous over other exemplary embodiments.The detailed description includes specific details for the purpose ofproviding a thorough understanding of the exemplary embodiments of thespecification. It will be apparent to those skilled in the art that theexemplary embodiments of the specification may be practiced withoutthese specific details. In some instances, well known structures anddevices are shown in block diagram form in order to avoid obscuring thenovelty of the exemplary embodiments presented herein.

For purposes of convenience and clarity only, directional terms, such astop, bottom, left, right, up, down, over, above, below, beneath, rear,back, and front, may be used with respect to the accompanying drawingsor chip embodiments. These and similar directional terms should not beconstrued to limit the scope of the disclosure in any manner.

In this specification and in the claims, it will be understood that whenan element is referred to as being “connected to” or “coupled to”another element, it can be directly connected or coupled to the otherelement or intervening elements may be present. In contrast, when anelement is referred to as being “directly connected to” or “directlycoupled to” another element, there are no intervening elements present.

Some portions of the detailed descriptions which follow are presented interms of procedures, logic blocks, processing and other symbolicrepresentations of operations on data bits within a computer memory.These descriptions and representations are the means used by thoseskilled in the data processing arts to most effectively convey thesubstance of their work to others skilled in the art. In the presentapplication, a procedure, logic block, process, or the like, isconceived to be a self-consistent sequence of steps or instructionsleading to a desired result. The steps are those requiring physicalmanipulations of physical quantities. Usually, although not necessarily,these quantities take the form of electrical or magnetic signals capableof being stored, transferred, combined, compared, and otherwisemanipulated in a computer system.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the followingdiscussions, it is appreciated that throughout the present application,discussions utilizing the terms such as “accessing,” “receiving,”“sending,” “using,” “selecting,” “determining,” “normalizing,”“multiplying,” “averaging,” “monitoring,” “comparing,” “applying,”“updating,” “measuring,” “deriving” or the like, refer to the actionsand processes of a computer system, or similar electronic computingdevice, that manipulates and transforms data represented as physical(electronic) quantities within the computer system's registers andmemories into other data similarly represented as physical quantitieswithin the computer system memories or registers or other suchinformation storage, transmission or display devices.

Embodiments described herein may be discussed in the general context ofprocessor-executable instructions residing on some form ofnon-transitory processor-readable medium, such as program modules,executed by one or more computers or other devices. Generally, programmodules include routines, programs, objects, components, datastructures, etc., that perform particular tasks or implement particularabstract data types. The functionality of the program modules may becombined or distributed as desired in various embodiments.

In the figures, a single block may be described as performing a functionor functions; however, in actual practice, the function or functionsperformed by that block may be performed in a single component or acrossmultiple components, and/or may be performed using hardware, usingsoftware, or using a combination of hardware and software. To clearlyillustrate this interchangeability of hardware and software, variousillustrative components, blocks, modules, circuits, and steps have beendescribed above generally in terms of their functionality. Whether suchfunctionality is implemented as hardware or software depends upon theparticular application and design constraints imposed on the overallsystem. Skilled artisans may implement the described functionality invarying ways for each particular application, but such implementationdecisions should not be interpreted as causing a departure from thescope of the present disclosure. Also, the exemplary wirelesscommunications devices may include components other than those shown,including well-known components such as a processor, memory and thelike.

The techniques described herein may be implemented in hardware,software, firmware, or any combination thereof, unless specificallydescribed as being implemented in a specific manner. Any featuresdescribed as modules or components may also be implemented together inan integrated logic device or separately as discrete but interoperablelogic devices. If implemented in software, the techniques may berealized at least in part by a non-transitory processor-readable storagemedium comprising instructions that, when executed, performs one or moreof the methods described above. The non-transitory processor-readabledata storage medium may form part of a computer program product, whichmay include packaging materials.

The non-transitory processor-readable storage medium may comprise randomaccess memory (RAM) such as synchronous dynamic random access memory(SDRAM), read only memory (ROM), non-volatile random access memory(NVRAM), electrically erasable programmable read-only memory (EEPROM),FLASH memory, other known storage media, and the like. The techniquesadditionally, or alternatively, may be realized at least in part by aprocessor-readable communication medium that carries or communicatescode in the form of instructions or data structures and that can beaccessed, read, and/or executed by a computer or other processor. Forexample, a carrier wave may be employed to carry computer-readableelectronic data such as those used in transmitting and receivingelectronic mail or in accessing a network such as the Internet or alocal area network (LAN). Of course, many modifications may be made tothis configuration without departing from the scope or spirit of theclaimed subject matter.

The various illustrative logical blocks, modules, circuits andinstructions described in connection with the embodiments disclosedherein may be executed by one or more processors, such as one or moremotion processing units (MPUs), digital signal processors (DSPs),general purpose microprocessors, application specific integratedcircuits (ASICs), application specific instruction set processors(ASIPs), field programmable gate arrays (FPGAs), or other equivalentintegrated or discrete logic circuitry. The term “processor,” as usedherein may refer to any of the foregoing structure or any otherstructure suitable for implementation of the techniques describedherein. In addition, in some aspects, the functionality described hereinmay be provided within dedicated software modules or hardware modulesconfigured as described herein. Also, the techniques could be fullyimplemented in one or more circuits or logic elements. A general purposeprocessor may be a microprocessor, but in the alternative, the processormay be any conventional processor, controller, microcontroller, or statemachine. A processor may also be implemented as a combination ofcomputing devices, e.g., a combination of an MPU and a microprocessor, aplurality of microprocessors, one or more microprocessors in conjunctionwith an MPU core, or any other such configuration.

Unless defined otherwise, all technical and scientific terms used hereinhave the same meaning as commonly understood by one having ordinaryskill in the art to which the disclosure pertains.

Finally, as used in this specification and the appended claims, thesingular forms “a, “an” and “the” include plural referents unless thecontent clearly dictates otherwise.

As noted above, it may be desirable to operate a sensor at a selectedoperating temperature to reduce the effect of ambient temperature onperformance. The techniques of this disclosure may include selecting anoperating temperature and selectively activating a temperature elementassociated with the sensor to drive the temperature of the sensortowards the selected operating temperature. Correspondingly, a firstcompensation may be applied to output of the sensor based at least inpart on the selected operating temperature. The first compensation maybe predetermined for the selected operating temperature. Current ambienttemperature may be estimated based at least in part on quantifyingenergy supplied to the temperature element. Alternatively or inaddition, the selected operating temperature may be selected from a setof predetermined operating temperatures. An appropriate compensation mayhave been determined for each of the predetermined operatingtemperatures. Selecting among the predetermined operating temperaturesmay depend at least in part on the ambient temperature.

To help illustrate aspects of this disclosure, an exemplary MEMS-basedsensor system is depicted in FIG. 1. The system 100 includes a CMOS die102, a MEMS cap 104 coupled to the CMOS die 102, and a thermal element106 integrated into the MEMS cap 104. The MEMS cap 104 encapsulates theMEMS sensor. In one embodiment, the thermal element 106 is integratedinto a top surface of the MEMS cap 104. By activating and/ordeactivating thermal element 106, the temperature of any of the MEMS cap104, encapsulated MEMS sensor, and the CMOS die 102 can be increasedand/or decreased respectively. An outer package 108 houses the CMOS die102, the MEMS cap 104, and the thermal element 106 to provide a thermalenvelope and may be insulated if desired to aid maintaining MEMS cap ata selected operating temperature that may be different than ambienttemperature. System 100 may also include a temperature sensor 110encapsulated by package 108 to provide an indication of the operatingtemperature of MEMS cap 104. Temperature sensor 110 may be integratedinto CMOS die 102 or may be a separate element as desired, such as anexternal thermocouple attached to package 108. Thermal element 106 maybe coupled to at least one package pad 112 coupled to the assembly ofthe MEMS cap 104/CMOS die 102 structure via at least one wire bond 114or using other suitable techniques. CMOS die 102 may also implementcircuitry associated with the operation and function of the sensor,including circuitry for receiving and/or processing signals output bythe sensor of MEMS cap 104. Notably, CMOS die 102 may include controllercircuitry 116 to receive feedback from temperature sensor 110 andselectively operate thermal element 106 to drive MEMS cap 104 towardsthe selected operating temperature. Techniques for regulating thetemperature of sensor, applying compensations and calibration aredescribed in commonly-assigned U.S. Pat. No. 8,686,555, issued Apr. 1,2014, U.S. patent application Ser. No. 14/578,312, filed Dec. 19, 2014,and U.S. Patent Provisional Application Ser. No. 62,270,490, filed Dec.21, 2015, and the disclosures of each are incorporated herein byreference.

As will be appreciated, thermal element 106 may be configured tofunction as a heater and/or cooler. For example, thermal element 106 maybe a resistive heating element that outputs heat based on the flow ofcurrent through the element, although in other embodiment thermalelement 106 may provide heating and cooling as desired, such as aPeltier element, or may function as only as a cooling element. Dependingon whether thermal element 106 heats, cools or both, an operatingtemperature may be selected that is different from ambient temperature,either above or below as warranted, and thermal element 106 may beselectively activated to drive the operating temperature of system 100towards the selected operating temperature.

As noted, in some embodiments thermal element 106 is activated byapplying a current through two terminals of the thermal element 106,increasing the temperature of the thermal element 106 through Jouleheating and correspondingly increasing the temperature of MEMS cap 104and CMOS die 102 coupled to MEMS cap 104. The high thermal conductivityof the silicon components of the system 100 and the small massesinvolved in the system 100 results in a time constant that is very smallincluding but not limited to the order of milliseconds. Accordingly,system 100 may rapidly be adjusted by thermal element 106. Similarprinciples may be applied when thermal element 106 is configured to coolMEMS cap 104 and CMOS die 102. One of ordinary skill in the art readilyrecognizes that the thermal element 106 can be integrated into the MEMScap 104 during production of the system 100 or post-production by anend-user and that would be within the spirit and scope of the presentinvention. In one embodiment, the MEMS cap 104 is made of a variety ofmaterials including but not limited to silicon.

As shown, a two terminal thermal element 106 may be integrated with theMEMS cap 104 to function as a resistive heater, which may be integratedinto the MEMS cap by any suitable technique, including but not limitedto micromachining and screen printing methodologies. For example, theresistive heater may be an aluminum film deposited into a top surface ofthe MEMS cap, or may comprises any material that conducts orsemi-conducts current including but not limited to polysilicon, variousmetals, various metallic silicides, and other silicon based films, andresistive patches. In another embodiment, the resistive heater is a highresistance material including but not limited to a polymer with metaldust. The resistance and associated heat output of thermal element 106may reflect other design characteristics, such as by providing one ormore cuts of desired depths to separate thermal element 106 intoportion, causing current to flow through MEMS cap 104 to bridge thediscontinuities. In other embodiments, thermal element 106 may beconfigured as a heater comprising aluminum layers lithographicallypatterned on a top surface of MEMS cap 104.

One suitable architecture employing controller 116 is schematicallyshown in FIG. 2. The difference between output from temperature sensor110 and the selected operating temperature is determined by comparator118 to produce an error signal that is fed to controller 116. As notedabove, controller 116 may be implemented by CMOS die 102, and may useany desired combination of hardware, software and firmware. For example,controller 116 may include instructions stored in non-transitory memorythat may be executed by a processor. As shown, controller 116 may beconfigured to output an ON or OFF command to thermal element 106 basedon feedback from temperature sensor 110 to minimize the error signal. Inthis embodiment, controller 116 may implement proportional block 120(P), integral block 122 (I) and derivative block 124 (D) to form a PIDfeedback loop as known in the art. Proportional block 120 may beconfigured to react to the present error signal to provide a commandoutput that reflects the degree of difference between the selectedoperating temperature and the sensed temperature. Integral block 122 maybe configured to reflect past operation of controller 116, so that anaccumulating error signal may result in a greater response. Derivativeblock 124 may be configured to use the current rate of change toestimate future output of temperature sensor 110. The parametersassociated with each of these blocks may be tuned to adjust the overallbehavior of controller 116, including the speed of response to error,the amount of overshoot that may occur, temperature oscillation andothers. For example, the PID parameters may be configured to account forhysteresis that the system may exhibit. Other suitable control schemesmay also be used as desired. Further, controller 116 may also employother information from source 126 that may influence the temperatureresponse of system 100. For example, in UAV applications, differentlocations, heights, weather, wind-speed, propeller speed and factors mayaffect the temperature of system 100, and this information may beobtained from the appropriate sensor or from the control system of theUAV. In other applications, one of ordinary skill in the art willappreciate that any information that may change the expected thermalresponse of package 108 may be employed to adjust the operation ofcontroller 116 as desired.

Representative operation of controller 116 is schematically illustratedin FIG. 3, showing the operating temperature of system 100 over time inresponse to the control output. Here, thermal element 106 functions as aheater, such that operating temperature increases when activated, butthe principles may be adapted as necessary to accommodate thermalelements that have cooling capability. Trace 302 represents theoperating temperature as measured by temperature sensor 110. An initialtemperature of system 100 is indicated as T_(i) and the selectedoperating temperature is indicated T_(s). Under some circumstances, suchas when system 100 has been inoperative for a sufficient period of time,T_(i) may be used to estimate current ambient temperature. Trace 304represents the command being output by controller 116 to selectivelyactivate thermal element 106. In this embodiment, thermal element 106 isbeing controlled by duty cycling the activation between “ON” and “OFF.”The duty cycle may be characterized by a pulse width and frequency,which are shown as being predetermined, but either or both may beadjusted as desired. Control schemes other than duty cycling may beused, such as by varying voltage, resistance and/or current that isapplied to thermal element 106 in the case of a resistive heater, orother suitable parameters if thermal element 106 has cooling capability.

As shown, an initial phase of operation may include operating thermalelement 106 continuously as the operating temperature increases fromT_(i) and approaches T_(s). Here, continuous operation of thermalelement 106 ceases once T_(s) is reached and is then subject to dutycycle operation subsequently. For example, after overshooting T_(s)during initial heating, the operating temperature may fall to a lowthreshold 306 established by controller 116, such that a period of dutycycle operation 308 is triggered. Once the operating temperature risesto a high threshold 310, the duty cycling of thermal element 106 issuspended. Subsequent periods of duty cycle operation may be controlledsimilarly, using thresholds determined by applying the PID conceptsdiscussed above or in any other suitable manner.

In one aspect, it may be desirable to estimate the current ambienttemperature. For example, in addition to applying a sensor compensationthat depends on the selected operating temperature, a furthercompensation may depend on the difference between the selected operatingtemperature and the current ambient temperature. For example,compensation may be changed when warranted by the difference in theselected operating temperature and the ambient temperature.Alternatively or in addition, the operating temperature may be selectedfrom a set of predetermined operating temperatures as will be describedin further detail below. Accordingly, FIG. 4 depicts a flowchart showinga representative routine for compensating a sensor. Beginning with 400,a sensor assembly including the sensor, a temperature sensor and atemperature element may be provided. In 402, an operating temperaturemay be selected. Based on the selected operating temperature, a firstcompensation may be applied to output of the sensor in 404. Thecompensation for the selected operating temperature may be determined byemploying a suitable calibration routine during manufacture,provisioning, testing or the like. Next, in 406, the current ambienttemperature may be estimated based at least in part on quantifyingenergy supplied to the temperature element. As will be appreciated, theamount of energy used to maintain system 100 at the selected operatingtemperature will be dependent on the difference between the selectedoperating temperature and the current ambient temperature.

In the above embodiment, quantifying the energy may include determiningthe length of a period of duty cycle operation, such as period 308.Since pulse width and frequency may be predetermined, the amount ofenergy may be calculated based on the length of the period. Inembodiments that adjust pulse width and/or frequency, these values maybe incorporated into the calculation. For control systems that do notutilize duty cycling, any other suitable method may be used to quantifythe energy, such as by measuring the amount of current delivered. Forexample, the amount of current delivered during the initial heatingphase shown in FIG. 3 may be used to estimate ambient temperature priorto beginning the duty cycle mode of operation. Different techniques mayalso be applied depending on the stage of operation. For example, aninitial ambient temperature may be estimated from T_(i) when system 100has been inactive for a sufficient period to achieve equilibration asnoted above. Other characteristics, such as the efficiency of thermalelement 106, insulation properties of package 108, and other factors maybe used when estimating ambient temperature as a function of thequantified energy. By employing these techniques, ambient temperaturemay be estimated without requiring an auxiliary temperature sensordeployed outside package 108. In turn, this reduces the complexity ofsystem 100, avoiding the costs and power usage associated with providingthe auxiliary sensor.

Further, system 100 may be calibrated at a plurality or set of operatingtemperatures. The set of operating temperatures may be configured tocover a range of anticipated ambient temperatures under which system 100may operate. In general, it is desirable to utilize an operatingtemperature that is relatively close to ambient temperature to reducethe energy cost associated with maintaining system 100 at a temperatureother than ambient. However, it is also desirable to provide asufficient difference between the selected operating temperature andambient temperature to allow for consistent temperature control. Whenambient temperature is too close to the selected operating temperature,deactivating thermal element 106 may not cause a sufficient temperatureresponse within the desired amount of time, delaying system 100 fromreaching a temperature within an acceptable range of the selectedoperating temperature. Accordingly, suitable compensations may bedetermined for each temperature in the set of predetermined operatingtemperatures. Based on estimated ambient temperature, an appropriateoperating temperature may be selected from the set of predeterminedoperating temperatures. As discussed above, ambient temperature may beestimated based on quantifying energy applied to the thermal element tomaintain or achieve a temperature or from the temperature sensor priorto operation of system 100. In other embodiments, ambient temperaturemay also be estimated using an auxiliary temperature sensor that isdeployed outside package 108.

To help illustrate aspects of the operation of system 100, FIG. 5depicts a flowchart showing a representative routine for compensating asensor. Beginning with 500, a sensor assembly including the sensor, atemperature sensor and a temperature element may be provided. In 502,the initial ambient temperature may be estimated using any of the abovetechniques or others. Based on the estimated ambient temperature, anoperating temperature may be selected from a set of predeterminedoperating temperatures in 504. System 100 may have previously beencalibrated at each of the predetermined operating temperatures todetermine the appropriate compensations for each. As such, in 506 thetemperature element may be selectively operated to drive temperaturewithin the thermal envelope towards the selected operating temperatureand in 508, a compensation corresponding to the selected operatingtemperature may be applied to output of the sensor. In 510, the currentambient temperature may be estimated, again by any appropriate method.For example, quantification of the energy used to maintain system 100 atthe current operating temperature may be used to estimate the currentambient temperature or an auxiliary temperature sensor may be sampled.In 512, a new operating temperature may be selected from the set ofpredetermined operating temperatures when the current estimated ambienttemperature has changed sufficiently from the initial estimated ambienttemperature, such as when the current estimated ambient threshold iswithin a threshold of the selected operating temperature.Correspondingly, the temperature element may be selectively operated todrive temperature within the thermal envelope towards the new selectedoperating temperature in 514 and a compensation corresponding to the newselected operating temperature may be applied to output of the sensor in516.

A representative example involving the use of a set of predeterminedoperating temperatures is schematically shown in FIG. 6. Again, theoperating temperature of system 100 is shown over time in response tothe control output, with thermal element 106 configured as a heater.Trace 602 represents the operating temperature as measured bytemperature sensor 110 and duty cycle operation of thermal element 106is represented by trace 604. Predetermined operating temperatures 606,608, 610 and 612 have been established at 80° C., 60° C., 40° C. and 20°C., respectively. As discussed above, compensations for the sensor ateach of these predetermined operating temperatures may be established bycalibration during manufacture or another stage prior to use of system100. At a first ambient temperature, AT₁, controller 116 may selectoperating temperature 608. Accordingly, thermal element 106 is operatedas indicated by trace 604 until operating temperature stabilizes aroundthe selected operating temperature, with the understanding that someoscillation may be unavoidable given the nature of feedback control. Ifthe ambient temperature changes, such as falling to AT₂, a new operatingtemperature 610 may be selected. Selective activation of thermal element106 is then performed to achieve the new operating temperature, which inthis example may include deactivating thermal element 106 until theoperating temperature falls to a low threshold, as described above withregard to FIG. 3.

Any suitable number of predetermined operating temperatures may beemployed to cover the range of anticipated environments with a desireddegree of resolution. In a further aspect, one or more supplementaloperating temperatures, such as operating temperatures 614, 616, 618 and620, may be established. Supplemental operating temperatures may be usedto provide a smooth transition between adjacent predetermined operatingtemperatures. Although system 100 may not have undergone fullcalibration at such supplemental operating temperatures, appropriatecompensations may be determined in a number of suitable ways. Forexample, a compensation for a supplemental operating temperature may becalculated from one or more compensation values established for one ormore of the predetermined operating temperatures. The compensation maybe extrapolated or interpolated as warranted and may be estimatedproportionally if the relationship is linear or by using a suitablecurve fitting algorithm for a nonlinear relationship, using one or morecompensation values for the predetermined operating temperatures.Similarly, if any compensation values have previously been determinedfor a supplemental operating temperature, these may also be used toestablish compensations for other supplemental operating temperatures.Also, controller 116 may be operated to hold system 100 at one or moreof the supplemental operating temperatures so that sensor output may berecorded and used to help determine the appropriate compensations. Aswill be appreciated, the design of system 100 with integrated thermalelement 106 precludes the need for an external apparatus (e.g., an ovenor refrigerator) to stabilize the operating temperature duringcalibration. Consequently, effective calibration may be performed atvarious times during and following manufacture, including when system100 is in service, allowing it to adaptively develop new supplementaloperating temperatures and determine the corresponding compensations. Inturn, having multiple operating temperatures, including either or bothpredetermined operating temperatures and supplemental operatingtemperatures allows selection of an operating temperature that minimizesthe difference to ambient temperature to improve temperature control andreduce power consumption, while maintaining sufficient difference toallow rapid temperature response. Employing an operating temperaturethat is relatively close to ambient temperature may also allow the sizeof thermal element 106 to be reduced.

System 100 may be incorporated into any suitable portable device orapparatus, such as a handheld or wearable device that can be moved inspace by a user and its motion, location and/or orientation in spacetherefore sensed. For example, such a portable device may be a mobilephone (e.g., cellular phone, a phone running on a local network, or anyother telephone handset), tablet, personal digital assistant (PDA),video game player, video game controller, navigation device, wearabledevice (e.g., glasses, watch, belt clip), fitness tracker, virtual oraugmented reality equipment, mobile internet device (MID), personalnavigation device (PND), digital still camera, digital video camera,binoculars, telephoto lens, portable music, video or media player,remote control, or other handheld device, or a combination of one ormore of these devices. However, the techniques of this disclosure mayalso be applied to other types of devices that are not handheld,including autonomous or piloted vehicles whether land-based, aerial, orunderwater vehicles, or equipment that may be used with such vehicles.As an illustration only and without limitation, the vehicle may be adrone, also known as an unmanned aerial vehicle (UAV). In oneembodiment, the sensor may be an inertial MEMS-based sensor. Forexample, three gyroscopes and three accelerometers may be employed, anda sensor fusion operation performed by to combine the data. Exemplarydetails regarding suitable sensor configurations may be found inco-pending, commonly owned U.S. patent application Ser. No. 11/774,488,filed Jul. 6, 1007, and Ser. No. 12/106,921, filed Apr. 11, 1008, whichare hereby incorporated by reference in their entirety.

As used herein, a chip may be defined to include at least one substratetypically formed from a semiconductor material. A single chip may beformed from multiple substrates, where the substrates are mechanicallybonded to preserve the functionality. A multiple chip includes at leasttwo substrates, wherein the two substrates are electrically connected,but do not require mechanical bonding. A package provides electricalconnection between the bond pads on the chip to a metal lead that can besoldered to a PCB. A package typically comprises a substrate and acover. Integrated Circuit (IC) substrate may refer to a siliconsubstrate with electrical circuits, typically CMOS circuits. One or moresensors may be incorporated into the package if desired using anysuitable technique. In some embodiments, a sensor may be MEMS-based,such that a MEMS cap provides mechanical support for the MEMS structure.The MEMS structural layer is attached to the MEMS cap. The MEMS cap isalso referred to as handle substrate or handle wafer. In someembodiments, the first substrate may be vertically stacked, attached andelectrically connected to the second substrate in a single semiconductorchip, while in other embodiments, the first substrate may be disposedlaterally and electrically connected to the second substrate in a singlesemiconductor package. In one embodiment, the first substrate isattached to the second substrate through wafer bonding, as described incommonly owned U.S. Pat. No. 7,104,129, which is incorporated herein byreference in its entirety, to simultaneously provide electricalconnections and hermetically seal the MEMS devices. This fabricationtechnique advantageously enables technology that allows for the designand manufacture of high performance, multi-axis, inertial sensors in avery small and economical package. Integration at the wafer-levelminimizes parasitic capacitances, allowing for improved signal-to-noiserelative to a discrete solution. Such integration at the wafer-levelalso enables the incorporation of a rich feature set which minimizes theneed for external amplification.

The techniques of this disclosure have the potential to provide a numberof benefits. For applications involving autonomous vehicles,), itessential to have sensors such as a gyroscope be very predictable toprovide adequate navigation and control. Variations in sensor output dueto temperature have been a major obstacle. Existing solutions typicallyprovide accuracies within about 3° with settling times on the order oftwo to three minutes. In comparison, the techniques of this disclosuremay provide accuracies within about 0.1° with settling times of lessthan one minute. Further, by providing a set of predetermined operatingtemperatures, system 100 may readily adapt to changes in ambienttemperature.

Although the present invention has been described in accordance with theembodiments shown, one of ordinary skill in the art will readilyrecognize that there could be variations to the embodiments and thosevariations would be within the spirit and scope of the presentinvention. Accordingly, many modifications may be made by one ofordinary skill in the art without departing from the spirit and scope ofthe present invention.

What is claimed is:
 1. A method for compensating a sensor, comprising:providing a sensor assembly including the sensor, a temperature sensorand a temperature element contained within a thermal envelope; selectingan operating temperature; selectively activating the temperature elementto drive temperature within the thermal envelope towards the selectedoperating temperature; applying a first compensation to an output of thesensor based at least in part on the selected operating temperature andestimating current ambient temperature based at least in part onquantifying energy supplied to the temperature element.
 2. The method ofclaim 1, further comprising determining a difference between theselected operating temperature and the estimated current ambienttemperature and applying a second compensation to the output of thesensor based at least in part on the determined difference betweenselected operating temperature and estimated current ambienttemperature.
 3. The method of claim 1, further comprising selectivelyactivating the temperature element to compensate for hysteresis.
 4. Themethod of claim 1, wherein selectively activating the temperatureelement comprises operating the temperature element at a duty cycle. 5.The method of claim 4, wherein quantifying energy supplied to thetemperature element comprises characterizing the duty cycle.
 6. Themethod of claim 1, wherein quantifying energy supplied to thetemperature element comprising quantifying energy delivered to maintainthe thermal envelope at the operating temperature.
 7. The method ofclaim 1, further comprising estimating an initial ambient temperaturebased at least in part on an output from the temperature sensor prior toselectively activating the temperature element.
 8. The method of claim7, further comprising selecting the operating temperature based at leastin part on the estimated initial ambient temperature.
 9. The method ofclaim 1, further comprising selecting the operating temperature based atleast in part on the estimated current ambient temperature.
 10. Themethod of claim 1, wherein the operating temperature is selected from aset of predetermined temperatures.
 11. The method of claim 10, furthercomprising changing from a first operating temperature to a secondoperating temperature when the estimated current ambient temperature iswithin a threshold of the first operating temperature.
 12. The method ofclaim 10, further comprising determining compensations to be applied toa motion sensor output for each temperature of the set of predeterminedtemperatures.
 13. The method of claim 10, further comprising selectivelyactivating the thermal element to drive temperature within the thermalenvelope towards a supplemental operating temperature.
 14. The method ofclaim 13, further comprising performing a calibration routine at thesupplemental operating temperature to determine a compensation for thesupplemental operating temperature.
 15. The method of claim 14, furthercomprising applying the compensation for the supplemental operatingtemperature to the output of the sensor.
 16. The method of claim 14,further comprising performing calibration routines at a plurality ofsupplemental operating temperatures to determine compensations for eachof the supplemental operating temperatures.
 17. The method of claim 1,wherein the thermal element is selected from the group consisting of aheating element, a cooling element and a heating and cooling element.18. The method of claim 1, wherein the sensor is an inertial sensor. 19.The method of claim 1, wherein the sensor is implemented using a microelectro-mechanical system (MEMS).
 20. A sensor device comprising: asensor assembly including a sensor, a temperature sensor and atemperature element contained within a thermal envelope; and acontroller configured to: select an operating temperature; selectivelyactivate the temperature element to drive temperature within the thermalenvelope towards the selected operating temperature; apply a firstcompensation to an output of the sensor based at least in part on theselected operating temperature; and estimate current ambient temperaturebased at least in part on quantifying energy supplied to the temperatureelement.